s1_goto_dir() {
    cd "$1"
}

s2_touch_empty_file_with_given_name() {
    touch "$1"
}

s3_make_directories() {
    mkdir -p projects/{git,backup}
}

s4_create_6_files() {
    touch projects/{linux1_centos,linux1_redhat,linux1_c_programming,linux2_centos,linux2_redhat,linux2_c_programming}
}

s5_make_directories_in_git() {
    mkdir projects/git/{linux1,linux2}
}

s6_move_files_to_dir_1_or_2() {
    mv projects/linux1_* projects/git/linux1/ && mv projects/linux2_* projects/git/linux2/
}

s7_create_package_and_compress() {
    tar -czvf projects/backup/git.tar.gz projects/git
}

s8_delete_dir_git() {
    rm -rf projects/git
}

s9_recover_from_git_tar_gz_backup() {
    tar -zxvf projects/backup/git.tar.gz -C projects
}

s10_create_package_and_compress() {
    tar -jcvf projects/backup/git.tar.bz2 projects/git
}

s11_find_and_sort_alphabetically_all_created_files_and_dirs() {
    find ./projects | sort
}

s12_get_next_15_minutes_boundary() {
    now=$(date +%s)
    minutes=$(( (now + 899) / 900 * 900 ))
    date -d @$minutes +%Y-%m-%d_%H:%M:00
}
